function setup() { createCanvas(400, 400, WEBGL); //background(0); } var angle = 0; function draw() { background(0); //translate(width/2,height/2); rotateY(angle); angle += 0.01; var beta = 0; noFill(); stroke(255); strokeWeight(4); beginShape(); while(beta < PI) { var r = 100 * (0.8 + 1.6 * sin(6 * beta)); var theta = 2 * beta; var phi = 0.6 * PI * sin(12 * beta); var x = r * cos(phi) * cos(theta); var y = r * cos(phi) * sin(theta); var z = r * sin(phi); beta += 0.01; vertex(x, y, z); } endShape(CLOSE); }